<?php
/**
 * MySqlTransaction
 * Mysql transcation abstraction class.
 *
 * @author Lim Afriyadi
 * @version pre-alpha
 * @package Samble
 * @subpackage db
 * @license GNU/GPL
 */
abstract class SDbTransaction extends SDbResultSet
{
    /**
     * Mysql query statement
     * @var string
     */
    var $s_Stmt="";
    /**
     * Mysql query state
     * @var boolean
     */
    var $b_Query=false;
    /**
     * Handle the mysql connection object
     * @var object
     */
    var $o_Connection = null;

    /**
     * Abstract function to do mysql 'SELECT' query
     * @param string $sQuery
     * @return boolean
     */
    abstract function select( $sQuery="" );
    /**
     * Abstract function to do mysql 'UPDATE' query
     * @param string $sQuery
     * @return boolean
     */
    abstract function update( $sQuery="" );
    /**
     * Abstract function to do mysql 'DELETE' query
     * @param string $sQuery
     * @return boolean
     */
    abstract function delete( $sQuery="" );
    /**
     * Abstract function to do mysql 'INSERT' query
     * @param string $sQuery
     * @return boolean
     */
    abstract function insert( $sQuery="" );
    /**
     * Abstract function to check mysql query state
     * @return boolean
     */
    abstract function isOnQuery();
    /**
     * Abstract function to clear mysql query statement
     */
    abstract function clearQuery();
}
?>
